-- 创建触发器函数
CREATE OR REPLACE FUNCTION create_user_profile()
RETURNS TRIGGER AS $$
BEGIN
    -- 插入新的user_profiles记录
    INSERT INTO public.user_profiles (
        id,
        email,
        username,
        avatar_url,
        created_at
    ) VALUES (
        NEW.id,
        NEW.email,
        split_part(NEW.email, '@', 1), -- 使用email的@前部分作为默认用户名
        NULL, -- 初始头像为空，用户可以在后续设置
        NOW()
    );
    
    RETURN NEW;
END;
$$ LANGUAGE plpgsql SECURITY DEFINER;

-- 创建触发器
CREATE TRIGGER on_auth_user_created
    AFTER INSERT ON auth.users
    FOR EACH ROW
    EXECUTE FUNCTION create_user_profile();
